package com.anjubao.parking.municipal.parkinglot.model;

import com.anjubao.parking.municipal.common.entity.BaseEntity;
import com.anjubao.parking.municipal.common.utils.U;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * @author anjubao
 */
@TableName("parking_lot_slot")
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "ParkingLotSlot", description = "停车位")
@ToString
@Accessors(chain = true)
public class ParkingLotSlot extends BaseEntity<ParkingLotSlot> {


    @TableId(type = IdType.INPUT)
    @ApiModelProperty("车位id")
    private Long id;

    @ApiModelProperty("车位编号")
    private String code;

    @ApiModelProperty("车位名称")
    private String name;

    @ApiModelProperty("停车场ID")
    private Long parkingLotId;

    @ApiModelProperty("停车场编号,code生成规则为100(3位)+yyMMddHHmm(10位)+id(19位)")
    private String parkingLotCode;

    @ApiModelProperty("停车场名称")
    private String parkingLotName;

    @ApiModelProperty("停车场所在省份ID")
    private Integer parkingLotProvinceId;

    @ApiModelProperty("停车场所在省份名称")
    private String parkingLotProvinceName;

    @ApiModelProperty("停车场所在城市ID")
    private Integer parkingLotCityId;

    @ApiModelProperty("停车场所在城市名称")
    private String parkingLotCityName;

    @ApiModelProperty("停车场所在区域ID")
    private Integer parkingLotDistrictId;

    @ApiModelProperty("停车场所在区域名称")
    private String parkingLotDistrictName;

    @ApiModelProperty("停车位类型 1:普通车位,2:共享车车位,3:保留车位")
    private Integer type;

    @ApiModelProperty("是否可预约 0:不可预约,1:可预约")
    private Integer isCanReserve;

    @ApiModelProperty("纬度")
    private Double latitude;

    @ApiModelProperty("经度")
    private Double longitude;

    @ApiModelProperty("状态 0:禁用,1:正常,2:占用")
    private Integer status;

    @ApiModelProperty("备注")
    private String note;

}
